package com.ruoyi.treatment.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.treatment.domain.dto.DocTreatmentSubmitDto;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 就诊信息对象 doc_treatment
 *
 * @author ruoyi
 * @date 2025-08-14
 */
public class DocTreatment extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 就诊Id */
    private Long treatId;

    /** 诊断描述 */
    @Excel(name = "诊断描述")
    private String treatInfo;

    /** 药方Id */
    @Excel(name = "药方Id")
    private String prescriptId;

    /** 就诊状态 */
    @Excel(name = "就诊状态")
    private String treatState;

    /** 就诊时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "就诊时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date treatTime;

    /** 用户名 */
    @Excel(name = "用户名")
    private String userName;

    /** 用户昵称 */
    @Excel(name = "用户昵称")
    private String nickName;

    /** 用户年龄 */
    @Excel(name = "用户年龄")
    private Integer userAge;

    /** 用户电话 */
    @Excel(name = "用户电话")
    private String userPhone;

    /** 预约地址 */
    @Excel(name = "预约地址")
    private String appAddress;

    /** 预约描述 */
    @Excel(name = "预约描述")
    private String appInfo;

    /** 预约时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "预约时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date appDateTime;


    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getAppInfo() {
        return appInfo;
    }

    public void setAppInfo(String appInfo) {
        this.appInfo = appInfo;
    }

    public Date getAppDateTime() {
        return appDateTime;
    }

    public void setAppDateTime(Date appDateTime) {
        this.appDateTime = appDateTime;
    }

    /** 药品清单 */
    private List<DocTreatmentSubmitDto.YaoDanDto> yaoDan;

    public void setTreatId(Long treatId)
    {
        this.treatId = treatId;
    }

    public Long getTreatId()
    {
        return treatId;
    }

    public void setTreatInfo(String treatInfo)
    {
        this.treatInfo = treatInfo;
    }

    public String getTreatInfo()
    {
        return treatInfo;
    }

    public void setPrescriptId(String prescriptId)
    {
        this.prescriptId = prescriptId;
    }

    public String getPrescriptId()
    {
        return prescriptId;
    }

    public void setTreatState(String treatState)
    {
        this.treatState = treatState;
    }

    public String getTreatState()
    {
        return treatState;
    }

    public void setTreatTime(Date treatTime)
    {
        this.treatTime = treatTime;
    }

    public Date getTreatTime()
    {
        return treatTime;
    }

    public String getUserName()
    {
        return userName;
    }

    public void setUserName(String userName)
    {
        this.userName = userName;
    }

    public String getNickName()
    {
        return nickName;
    }

    public void setNickName(String nickName)
    {
        this.nickName = nickName;
    }

    public Integer getUserAge()
    {
        return userAge;
    }

    public void setUserAge(Integer userAge)
    {
        this.userAge = userAge;
    }

    public String getUserPhone()
    {
        return userPhone;
    }

    public void setUserPhone(String userPhone)
    {
        this.userPhone = userPhone;
    }

    public String getAppAddress()
    {
        return appAddress;
    }

    public void setAppAddress(String appAddress)
    {
        this.appAddress = appAddress;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("treatId", getTreatId())
                .append("treatInfo", getTreatInfo())
                .append("prescriptId", getPrescriptId())
                .append("treatState", getTreatState())
                .append("treatTime", getTreatTime())
                .append("userName", getUserName())
                .append("nickName", getNickName())
                .append("userAge", getUserAge())
                .append("userPhone", getUserPhone())
                .append("appAddress", getAppAddress())
                .toString();
    }
}
